package com.stud.common.core.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

/**
 * @author Stud
 * @title XXXXX
 * @desription XXXXX
 * @data 2023-03-06 9:21
 */

@Schema(description = "流程基类")
@Getter
@Setter
public class WorkflowEntity extends BaseEntity {

    /**
     * 流程定义ID
     */
    @Schema(description = "流程定义ID")
    private Long workflowDefinitionId;

    /**
     * 流程实例ID
     */
    @Schema(description = "流程实例ID")
    private Long workflowId;

    /**
     * 当前流程节点ID
     */
    @Schema(description = "当前流程节点ID")
    private Long workflowTaskId;

    /**
     * 当前流程节点名称
     */
    @Schema(description = "当前流程节点名称")
    private String workflowTaskName;

    /**
     * 流程状态
     */
    @Schema(description = "流程状态")
    private Integer workflowStatus;

    /**
     * 流程启动时间
     */
    @Schema(description = "流程启动时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date workflowStartTime;

    /**
     * 流程结束时间
     */
    @Schema(description = "流程结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date workflowEndTime;

    /**
     * 上次审批时间
     */
    @Schema(description = "上次审批时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastApproveTime;

    /**
     * 审核结果备注
     */
    @Schema(description = "审核结果备注")
    private String workflowRemark;

}
